package top.tangyh.lamp.care.vo.update;

import io.swagger.v3.oas.annotations.media.Schema;
import jakarta.validation.constraints.NotEmpty;
import jakarta.validation.constraints.NotNull;
import jakarta.validation.constraints.Size;
import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.NoArgsConstructor;
import lombok.ToString;
import lombok.experimental.Accessors;
import top.tangyh.basic.base.entity.SuperEntity;
import java.io.Serializable;

/**
 * <p>
 * 表单修改方法VO
 * 药物表
 * </p>
 *
 * @author zqb
 * @date 2024-08-09 16:23:52
 */
@Data
@NoArgsConstructor
@AllArgsConstructor
@ToString(callSuper = true)
@Accessors(chain = true)
@EqualsAndHashCode
@Builder
@Schema(description = "药物")
public class BHl7MedicineUpdateVO implements Serializable {

    private static final long serialVersionUID = 1L;

    @Schema(description = "主键")
    @NotNull(message = "请填写主键", groups = SuperEntity.Update.class)
    private Integer id;

    /**
     * 药品id
     */
    @Schema(description = "药品id")
    @Size(max = 64, message = "药品id长度不能超过{max}")
    private String medicineIdent;
    /**
     * 药品名称
     */
    @Schema(description = "药品名称")
    @NotEmpty(message = "请填写药品名称")
    @Size(max = 128, message = "药品名称长度不能超过{max}")
    private String medicineName;
    /**
     * 剂型id
     */
    @Schema(description = "剂型id")
    @Size(max = 64, message = "剂型id长度不能超过{max}")
    private String typeId;
    /**
     * 剂型名称
     */
    @Schema(description = "剂型名称")
    @Size(max = 64, message = "剂型名称长度不能超过{max}")
    private String typeName;
    /**
     * 规格
     */
    @Schema(description = "规格")
    @NotEmpty(message = "请填写规格")
    @Size(max = 64, message = "规格长度不能超过{max}")
    private String spec;
    /**
     * 包装量
     */
    @Schema(description = "包装量")
    @NotNull(message = "请填写包装量")
    private Integer packingVolume;
    /**
     * 包装单位
     */
    @Schema(description = "包装单位")
    @Size(max = 64, message = "包装单位长度不能超过{max}")
    private String packingUnit;
    /**
     * 药品最小单位
     */
    @Schema(description = "药品最小单位")
    @Size(max = 64, message = "药品最小单位长度不能超过{max}")
    private String minimumUnit;
    /**
     * 剂量
     */
    @Schema(description = "剂量")
    @Size(max = 32, message = "剂量长度不能超过{max}")
    private String dose;
    /**
     * 剂量单位
     */
    @Schema(description = "剂量单位")
    @Size(max = 32, message = "剂量单位长度不能超过{max}")
    private String doseUnit;
    /**
     * 是否删除
     */
    @Schema(description = "是否删除")
    private Integer isDeleted;
    /**
     * 抗菌限级
     */
    @Schema(description = "抗菌限级")
    @Size(max = 16, message = "抗菌限级长度不能超过{max}")
    private String kangJunXj;
    /**
     * 抗生限级
     */
    @Schema(description = "抗生限级")
    @Size(max = 16, message = "抗生限级长度不能超过{max}")
    private String kangShengXj;


}
